package com.ozo.boot.system.service;

import com.ozo.boot.common.base.model.BaseBatchDTO;
import com.ozo.boot.common.base.model.BasePage;
import com.ozo.boot.common.base.model.PageResult;
import com.ozo.boot.system.pojo.dto.ChangeStatusDTO;
import com.ozo.boot.system.pojo.dto.SysDictDataQueryDTO;
import com.ozo.boot.system.pojo.dto.SysDictDataSaveDTO;
import com.ozo.boot.system.entity.SysDictData;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * <p>
 * 数据字典 服务类
 * </p>
 *
 * @author qiangesoft
 * @since 2024-07-11
 */
public interface ISysDictDataService extends IService<SysDictData> {

    /**
     * 添加字典项
     *
     * @param saveDTO
     */
    void add(SysDictDataSaveDTO saveDTO);

    /**
     * 删除字典项
     *
     * @param batchDTO
     */
    void remove(BaseBatchDTO<Long> batchDTO);

    /**
     * 编辑字典项
     *
     * @param saveDTO
     */
    void edit(SysDictDataSaveDTO saveDTO);

    /**
     * 字典项分页
     *
     * @param basePage
     * @param queryDTO
     * @return
     */
    PageResult<SysDictData> page(BasePage basePage, SysDictDataQueryDTO queryDTO);

    /**
     * 修改状态
     *
     * @param statusDTO
     */
    void changeStatus(ChangeStatusDTO statusDTO);

}
